package org.jeecg.modules.wlhy.customer.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.*;
import java.io.Serializable;
import java.util.Date;


@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class ImportHyCustomerDTO implements Serializable {

    /**登录手机号*/
    @Excel(name = "登录手机号", width = 15)
    @ApiModelProperty(value = "登录手机号")
    @NotEmpty(message = "登录手机号不允许为空")
    private String loginPhone;

    /**客户类型 (customer_type  1个人 2 公司)*/
    @Excel(name = "客户类型", width = 15, dicCode = "customer_type")
    @Dict(dicCode = "customer_type")
    @ApiModelProperty(value = "客户类型 (customer_type  1个人 2 公司)")
    private String customerType;

    /**客户来源 (customer_channel  1平台 2 APP)*/
    @Excel(name = "客户来源", width = 15, dicCode = "customer_channel")
    @Dict(dicCode = "customer_channel")
    @ApiModelProperty(value = "客户来源 (customer_channel  1平台 2 APP)")
    private String customerChannel;

    /**客户名称*/
    @Excel(name = "客户名称", width = 15)
    @ApiModelProperty(value = "客户名称")
    private String customerName;

    @Excel(name = "客户简称", width = 15)
    @ApiModelProperty(value = "客户简称")
    private String customerShoreName;
    /**企业法人姓名*/
    @Excel(name = "企业法人姓名", width = 15)
    @ApiModelProperty(value = "企业法人姓名")
    private String legalName;
    /**法人手机号*/
    @Excel(name = "法人手机号", width = 15)
    @ApiModelProperty(value = "法人手机号")
    private String legalPhone;
    /**证件号码*/
    @Excel(name = "证件号码", width = 15)
    @ApiModelProperty(value = "证件号码")
    private String creditCode;
//
//    /**省代码*/
//    @Excel(name = "省代码", width = 15)
//    @ApiModelProperty(value = "省代码")
//    private String provinceCode;
//
//    /**市代码*/
//    @Excel(name = "市代码", width = 15)
//    @ApiModelProperty(value = "市代码")
//    private String cityCode;
    /**县代码*/
    @Excel(name = "区县代码", width = 15)
    @ApiModelProperty(value = "县代码")
    @NotEmpty(message = "县代码不允许为空")
    private String countyCode;
    /**详细地址*/
    @Excel(name = "详细地址", width = 15)
    @ApiModelProperty(value = "详细地址")
    @NotEmpty(message = "详细地址不允许为空")
    private String detailAddress;
//    /**营业执照有效期*/
//    @Excel(name = "营业执照有效期", width = 15, format = "yyyy-MM-dd")
//    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
//    @DateTimeFormat(pattern="yyyy-MM-dd")
//    @ApiModelProperty(value = "营业执照有效期")
//    private Date businessLicenseExpiredDate;
//    /**营业执照照片*/
//    @Excel(name = "营业执照照片", width = 15)
//    @ApiModelProperty(value = "营业执照照片")
//    private String businessLicenseImg;
//    /**营业执照副本*/
//    @Excel(name = "营业执照副本", width = 15)
//    @ApiModelProperty(value = "营业执照副本")
//    private String businessLicenseImg2;
//
//    /**法人身份证正面照片*/
//    @Excel(name = "法人身份证正面照片", width = 15)
//    @ApiModelProperty(value = "法人身份证正面照片")
//    private String legalIdcardImg;
//    /**法人身份证反面照片*/
//    @Excel(name = "法人身份证反面照片", width = 15)
//    @ApiModelProperty(value = "法人身份证反面照片")
//    private String legalIdcardBackImg;


//    /**联系人*/
//    @Excel(name = "联系人", width = 15)
//    @ApiModelProperty(value = "联系人")
//    @NotEmpty(message = "联系人不允许为空")
//    private String contactName;

    /**身份证号*/
    @Excel(name = "身份证号", width = 15)
    @ApiModelProperty(value = "身份证号")
    @NotEmpty(message = "身份证号不允许为空")
    private String idcard;
//    /**身份证正面照片*/
//    @Excel(name = "身份证正面照片", width = 15)
//    @ApiModelProperty(value = "身份证正面照片")
//    @NotEmpty(message = "身份证正面照片不允许为空")
//    private String idcardImg;
//    /**身份证反面照片*/
//    @Excel(name = "身份证反面照片", width = 15)
//    @ApiModelProperty(value = "身份证反面照片")
//    @NotEmpty(message = "身份证反面面照片不允许为空")
//    private String idcardBackImg;
//    /**身份证过期时间*/
//    @Excel(name = "身份证过期时间", width = 15, format = "yyyy-MM-dd")
//    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
//    @DateTimeFormat(pattern="yyyy-MM-dd")
//    @ApiModelProperty(value = "身份证过期时间")
//    @Future
//    @NotNull
//    private Date idcardExpiredDate;

//    @ApiModelProperty(value = "合作协议")
//    private String cooperAgreement;

//    /**主管税务机关*/
//    @Excel(name = "主管税主管税务机关务机关", width = 15)
//    @ApiModelProperty(value = "主管税务机关")
//    @NotEmpty(message = "主管税务机关不允许为空")
//    private String competentTaxAuthority;

}
